home *** CD-ROM | disk | FTP | other *** search
/ Programming Languages Suite / ProgramD2.iso / Languages / MS Cobol4.5 / DEMO / APPCDEMO / BATTLE.CMD < prev    next >
OS/2 REXX Batch file  |  1991-04-08  |  7KB  |  178 lines

  1. @echo off
  2. cls
  3. echo        COBOL Advanced Program to Program (APPC) Demonstration
  4. echo        ------------------------------------------------------
  5. echo                        Battleships game
  6. echo                        ----------------
  7. if %1. == . goto noparam
  8. if %1 == shared set appcmd=shared & goto okparam
  9. if %1 == SHARED set appcmd=shared & goto okparam
  10. if %1 == static set appcmd=static & goto okparam
  11. if %1 == STATIC set appcmd=static & goto okparam
  12. if %1 == animate set appcmd=animate & goto okparam
  13. if %1 == ANIMATE set appcmd=animate & goto okparam
  14. :noparam
  15. echo     usage: 
  16. echo           BATTLE ANIMATE   - create run files ready for ANIMATION
  17. echo           BATTLE STATIC    - create run files by linking with STATIC          
  18. echo                              run-time support (LCOBOL.LIB)
  19. echo           BATTLE SHARED    - create run files by linking with SHARED
  20. echo                              run-time support (COBLIB.LIB)
  21. goto end
  22.  
  23. :okparam
  24. echo ------------------------------------------------------------------------
  25. echo Copying ADIS modules:
  26. copy \cobol\lib\ADIS*.OBJ
  27. copy \cobol\lib\ADIS.DEF
  28. if not exist ADIS.OBJ goto noadis
  29. if not exist ADISINIT.OBJ goto noadis
  30. if not exist ADISKEY.OBJ goto noadis
  31. if not exist ADISDYNA.OBJ goto noadis
  32. if not exist ADIS.DEF goto noadis
  33. echo ADIS+ADISINIT+ADISKEY+ADISDYNA >ADIS.LNK
  34. if %appcmd% == shared goto shared
  35.  
  36. echo LIBRARY INITINSTANCE   >BATTAPPC.DEF
  37. echo PROTMODE              >>BATTAPPC.DEF
  38. echo DATA NONSHARED        >>BATTAPPC.DEF
  39. echo EXPORTS BATTAPPC @1   >>BATTAPPC.DEF
  40. echo IMPORTS APPC.APPC     >>BATTAPPC.DEF
  41. echo IMPORTS ACSSVC.ACSSVC >>BATTAPPC.DEF
  42. goto %appcmd%
  43.  
  44. :ANIMATE
  45. echo Creating run files for Animation...
  46. echo ------------------------------------------------------------------------
  47. echo Compiling...
  48. echo cobol battlel anim;
  49. cobol battlel anim;
  50. if not exist battlel.gnt goto compilerr
  51. echo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  52. echo cobol battler anim;
  53. cobol battler anim;
  54. if not exist battler.gnt goto compilerr
  55. echo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  56. echo cobol battappc anim opt(0);
  57. cobol battappc anim omf(obj) opt(0);
  58. if not exist battappc.obj goto compilerr
  59. if exist battappc.int erase battappc.int
  60. link battappc,,,coblib+os2,battappc.def;
  61. echo Compiling finished.
  62. echo ------------------------------------------------------------------------
  63. echo Copy following files to remote machine:
  64. echo   BATTLER.*
  65. echo   BATTAPPC.*
  66. echo To run on local machine enter:  ANIMATE BATTLEL
  67. echo To run on remote machine enter: ANIMATE BATTLER
  68. goto end
  69.  
  70. :STATIC
  71. echo Creating run files with static run time system...
  72. echo ------------------------------------------------------------------------
  73. echo Compiling...
  74. echo cobol battlel;
  75. cobol battlel;
  76. if not exist battlel.obj goto compilerr
  77. echo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  78. echo cobol battler;
  79. cobol battler;
  80. if not exist battler.obj goto compilerr
  81. echo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  82. echo cobol battappc;
  83. cobol battappc;
  84. if not exist battappc.obj goto compilerr
  85. echo Compiling finished.
  86. echo ------------------------------------------------------------------------
  87.  
  88. echo Linking...
  89. : In this example, the sub program battappc.obj is linked on its
  90. : own into a dll program.  You could, if you prefer link this object
  91. : in directly with the main program to create one executable - this is
  92. : what has been done for the example of linking with a shared run time below.
  93. : Same point applies to the ADIS sub program modules.
  94.  
  95. echo link battlel /stack:3500,,,lcobol+os2;
  96. link battlel /stack:3500,,,lcobol+os2;
  97. if not exist battlel.exe goto linkerr
  98. echo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  99. echo link battler /stack:3500,,,lcobol+os2;
  100. link battler /stack:3500,,,lcobol+os2;
  101. if not exist battler.exe goto linkerr
  102. echo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  103. echo link battappc,,,lcobol+os2,battappc.def;
  104. link battappc,,,lcobol+os2,battappc.def;
  105. if not exist battappc.dll goto linkerr
  106. echo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  107. echo link @adis.lnk,,,lcobol+os2,adis.def;
  108. link @adis.lnk,,,lcobol+os2,adis.def;
  109. if not exist adis.dll goto linkerr
  110. echo Linking finished.
  111. echo ------------------------------------------------------------------------
  112.  
  113. echo Copy following files to remote machine:
  114. echo   BATTLER.EXE
  115. echo   BATTAPPC.DLL
  116. echo   ADIS.DLL
  117. echo To run on local machine enter:  BATTLEL
  118. echo To run on remote machine enter: BATTLER
  119. echo Ensure directories containing .DLL files are on LIBPATH
  120. goto end
  121.  
  122. :SHARED
  123. echo Creating run files with shared run time system...
  124. echo ------------------------------------------------------------------------
  125. echo Compiling...
  126. echo cobol battlel;
  127. cobol battlel;
  128. if not exist battlel.obj goto compilerr
  129. echo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  130. echo cobol battler;
  131. cobol battler;
  132. if not exist battler.obj goto compilerr
  133. echo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  134. echo cobol battappc;
  135. cobol battappc;
  136. if not exist battappc.obj goto compilerr
  137. echo Compiling finished
  138. echo ------------------------------------------------------------------------
  139.  
  140. echo Linking...
  141. echo link battlel+battappc+@adis.lnk,,,coblib+os2+acs.lib;
  142. link battlel+battappc+@adis.lnk,,,coblib+os2+c:\cmlib\acs.lib;
  143. if not exist battlel.exe goto linkerr
  144. echo - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  145. echo link battler+battappc+@adis.lnk,,,coblib+os2+acs.lib;
  146. link battler+battappc+@adis.lnk,,,coblib+os2+c:\cmlib\acs.lib;
  147. if not exist battler.exe goto linkerr
  148. echo Linking finished
  149. echo ------------------------------------------------------------------------
  150.  
  151. echo Copy following file to remote machine:
  152. echo   BATTLER.EXE
  153.  
  154. echo To run on local machine enter:  BATTLEL
  155. echo To run on remote machine enter: BATTLER
  156. goto end
  157.  
  158. :linkerr
  159. echo Linking error.  Batch aborted.
  160. goto end
  161.  
  162. :compilerr
  163. echo Compliation error.  Batch aborted.
  164. goto end
  165.  
  166. :noadis
  167. echo ADIS Modules not found...  compilation aborted.
  168. echo copy from your COBDIR directory:
  169. echo       ADIS.OBJ, ADISKEY.OBJ, ADISINIT.OBJ, ADISDYNA.OBJ and ADIS.DEF
  170.  
  171. :end
  172. if exist *.obj erase *.obj
  173. if exist *.lnk erase *.lnk
  174. if exist *.def erase *.def
  175. if exist *.map erase *.map
  176. set appcmd=
  177.  
  178.